Info File

Author         : Raymond Russell
System         : ZX Spectrum - all models.
Language used  : Sinclair BASIC as used in the ZX Spectrum range of micros.
Lenght of code : 343 bytes

How to Run
---------
I have included a standard TAP file that will run on most good emulators.
But for ease of use http://torinak.com/qaop is fully operational web-based spectrum emulator.
Go to the website and you will be greeted by the spectrum 128 menu.
Move your mouse over to the left hand side of the screen, off of the spetrum screen and left click your mouse.
A menu will appear. Use the open option to load the tap file. It should LOAD and autorun.
When has run press a key you will be presented with the 128k menu again. Select 128 BASIC - down arrow and then
press enter to select. You will now see the listing and can RUN it again should you wish.


How It works
------------
The program prints 4 rows of asterisks 3 times within two nested loops. Then botton two lines are added.
b$ contains asterisks that are printed in the inner loop 4 rows.
For the top section of the tree this starts off as single asterisk and for each iteration of the
inner loop two further asterisks are added.
Each set of asterisks are centred by subtracting an offset from 16 (centre of the screen) based on the lenght (number)
of asterisks currently in b$ to be printed.
The outer loop then repeats the inner loop 3 times. The clever bit is that c$ starts with one asterisk
and that value is copied to b$. Just before the inner loop goes round again c$ has two asterisk added and this will be
copied into b$ when it does its inner loop. This allows each 'branch' of the tree to increase its starting size as it
is printed by the inner loop.

If you change the value 3 in LINE 30 to 5 it will print a bigger tree with no extra code required.

30 FOR L=1 TO 3 
becomes
30 FOR L=1 TO 5
